package com.swsc.solarverse.dao.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.swsc.solarverse.dao.entity.base.BaseTimeDO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author AutoGenerator
 * @since 2022-06-28
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("solar_defect")
public class DefectDO extends BaseTimeDO {

    /**
     * 缺陷编号
     */
    @TableField("defect_no")
    private Long defectNo;

    /**
     * 租户编号
     */
    @TableField("tenant_no")
    private Integer tenantNo;

    /**
     * 机构编号
     */
    @TableField("organ_no")
    private Integer organNo;

    /**
     * 电站名称
     */
    @TableField("organ_name")
    private String organName;

    @TableField("task_no")
    private String taskNo;
    @TableField("task_sub_no")
    private String taskSubNo;
    /**
     * 批次号: (yyyyMMdd8位 + 电站编号3位+类型2位+ 编号2位): 2107140010014(对应巡检任务编号)
     */
    @TableField("batch_no")
    private String batchNo;

    /**
     * 设备编号
     */
    @TableField("device_code")
    private String deviceCode;

    @TableField("device_module_code")
    private String deviceModuleCode;

    /**
     * 设备名称
     */
    @TableField("device_name")
    private String deviceName;

    /**
     * 故障分类 IR IV EL
     */
    @TableField("fault_category")
    private String faultCategory;

    /**
     * 故障名称
     */
    @TableField("fault_name")
    private String faultName;

    /**
     * 纬度
     */
    @TableField("latitude")
    private Double latitude;

    /**
     * 精度
     */
    @TableField("longitude")
    private Double longitude;

    /**
     * 损耗
     */
    @TableField("loss")
    private Float loss;

    @TableField("loss_p")
    private Float lossP;

    @TableField("loss_u")
    private Float lossU;

    @TableField("loss_i")
    private Float lossI;

    @TableField("loss_e")
    private Float lossE;
    /**
     * 巡检时间
     */
    @TableField("patrol_time")
    private LocalDateTime patrolTime;

    @TableField("patrol_actual_time")
    private LocalDateTime patrolActualTime;

    /**
     * 故障状态
     */
    @TableField("state")
    private String state;

    @TableField("process_state")
    private String processState;

    /**
     * 故障图片
     */
    @TableField("fault_img")
    private String faultImg;

    /**
     * 故障编号
     */
    @TableField("fault_no")
    private Integer faultNo;

    /**
     * 型号
     */
    @TableField("model")
    private String model;

    /**
     * 缺陷等级
     */
    @TableField("fault_level")
    private String faultLevel;

    /**
     * 分区
     */
    @TableField("zone")
    private String zone;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;

    /**
     * 故障原因
     */
    @TableField("fault_reason")
    private String faultReason;

    /**
     * 处理时间
     */
    @TableField("deal_time")
    private LocalDateTime dealTime;

    /**
     * 处理人
     */
    @TableField("dealer")
    private String dealer;

    @TableField("deal_remark")
    private String dealRemark;

    @TableField("auditor")
    private String auditor;

    /**
     * 处理时间
     */
    @TableField("audit_time")
    private LocalDateTime auditTime;


    @TableField("audit_remark")
    private String auditRemark;

    @TableField("fault_position")
    private String faultPosition;
    @TableField("fault_size")
    private Float faultSize;

    @TableField("string_index")
    private Byte stringIndex;
    @TableField("detection_model")
    private String detectionModel;

    /**
     * 分析时间
     */
    @TableField("analysis_time")
    private LocalDateTime analysisTime;
}
